In many stationary and mobile applications in which a device requests information from a service, it is desirable to recognize the type of device that is being served and have the ability to obtain data about that specific device in order to respond appropriately to the request. For example, in a mobile application, such as serving a mobile web page to a user on a mobile device using a wireless application protocol (WAP), it is desirable to recognize the type of device that is being served and have the ability to obtain data about the specific mobile device in order to respond appropriately to the request. It is common to use a device profile data source to look up this information. The device profile data source includes information that is specific to the type of device that is requesting the data.
Unfortunately there are many device profile data sources, and none of them are comprehensive. Each device profile data source may include data specific to different parts of the device, each device profile data source may include data on different sets of devices, and different device profile data sources typically have varying levels of accuracy. One of the reasons that device profile data sources are somewhat inaccurate is because it is costly to collect this data. Therefore, most of the data sources include only data that the provider is focused on. For example, a company located in the United Kingdom (UK) that sells images might provide a device profile database that is focused on device image capabilities for devices common in Europe, but may have little or no data regarding audio capabilities for devices in the United States.
Also, some device profile data is gathered through a careful process of research and hands-on testing of devices, while other device profile data is gathered without such careful research and testing. The former data tends to be accurate, but more limited and expensive, while the latter tends to be free, but error-prone.
One of the challenges facing providers of data, such as, but not limited to, a World Wide Web (WWW) based application data server, concerns the efficient use of device data that may be provided from a variety of device profile data sources. Further, specifically tailoring the available device profile data for a specific device that may be querying the application server remains a challenge. For example, a variety of different devices may query the web server for data.
Providing the data efficiently and in a usable manner to a variety of different devices and device types requires that the web server consider multiple device profile data sources and the type of business hosting the web application, while taking into account the types of devices that the application is targeting, the types of device profile parameters in which the application is interested, the expense the application/business can afford to pay for device profile data, and other considerations.
Therefore, there is a need for a way of efficiently delivering application data to a variety of different devices.